<?php
namespace app\admin\model;

use think\Model;

class   BookModel extends Model
{
    // 确定链接表名
    protected $table = 'en_picture_book';

    /**
     * 查询绘本
     * @param $where
     * @param $offset
     * @param $limit
     */
    public function getbooksByWhere($where, $offset, $limit,$desc='id desc')
    {
        return $this->where($where)->limit($offset, $limit)->order($desc)->select();
    }

    /**
     * 根据搜索条件获取所有的绘本数量
     * @param $where
     */
    public function getAllbooks($where)
    {
        return $this->where($where)->count();
    }

    /**
     * 获取绘本
     * @param $where
     */
    public function get_all_books($param='*',$where='1')
    {
        return $this->field($param)->where($where)->select();
    }

    /**
     * 添加绘本
     * @param $param
     */
    public function addbook($param,$url)
    {
        try{
            $result = $this->validate('bookValidate')->save($param);
            if(false === $result){
                // 验证失败 输出错误信息
                return msg(-1, '', $this->getError());
            }else{

                return msg(1,$url, '添加成功');
            }
        }catch (\Exception $e){
            return msg(-2, '', $e->getMessage());
        }
    }

    /**
     * 编辑绘本信息
     * @param $param
     */
    public function editbook($param,$where,$url)
    {
        try{

            $result = $this->validate('bookValidate')->save($param,$where);

            if(false === $result){
                // 验证失败 输出错误信息
                return msg(-1, '', $this->getError());
            }else{
                return msg(1,$url, '编辑绘本成功');
            }
        }catch(\Exception $e){
            return msg(-2, '', $e->getMessage());
        }
    }

    /**
     * 根据绘本的id 获取绘本的信息
     * @param $id
     */
    public function getOnebook($where,$field='*')
    {
        return $this->field($field)->where($where)->find();
    }

    /**
     * 根据绘本的条件 获取绘本一个信息
     * @param $id
     */
    public function getOnefield($field,$where)
    {
        return $this->where($where)->value($field);
    }

    /**
     * 删除绘本
     * @param $id
     */
    public function delbook($id)
    {
        try{
            $this->save(['is_del' => '1'],['id' => $id]);
            return msg(1, '', '删除成功');

        }catch(\Exception $e){
            return msg(-1, '', $e->getMessage());
        }
    }
    /**
     * 绘本上下架
     * @param $id
     */
    public function book_is_put($param,$where)
    {
        try{
            $this->save($param,$where);
            return msg(1, '', '操作成功');

        }catch(\Exception $e){
            return msg(-1, '', $e->getMessage());
        }
    }
}